Personal area network having media player and mobile device controlling the same

ABSTRACT

A system and method are provided for controlling content played by a number of media devices. In general, the system includes a mobile device and the number of media devices. The mobile device includes a wireless communication interface for communicating with the media devices, a media database, and a control system including a media client. When the mobile device enters a Wireless Personal Area Network (WPAN) associated with a media device, the media client obtains information describing the content residing at the media device and stores the information in the media database at the mobile device. Thereafter, when the mobile device is within the WPAN associated with the media device, the media database is used to select content to be played at the media device.

RELATED APPLICATIONS

This patent application is a Continuation of U.S. patent applicationSer. No. 13/096,214, filed on Apr. 28, 2011; which is a Continuation ofU.S. patent application Ser. No. 12/846,109, filed Jul. 29, 2010, nowU.S. Pat. No. 7,949,333, issued on May 24, 2011, which is a Continuationof U.S. patent application Ser. No. 11/270,293, filed Nov. 9, 2005, nowU.S. Pat. No. 7,787,904, issued on Aug. 31, 2010, the disclosures ofwhich are hereby incorporated herein by reference in their entireties.

FIELD OF THE INVENTION

The present invention relates to controlling content played at a numberof media devices using a mobile device.

BACKGROUND OF THE INVENTION

Each day one encounters numerous media devices such as computers,televisions with digital video recorders, MP3 players, and the like.These media devices may be located in various environments such as one'shome, office, or automobile. However, to date, there is no way of easilyascertaining the content available on these different media devices andcontrolling or selecting the content played by these media devices usinga mobile device. As such, there remains a need for a system and methodfor ascertaining the content available at a plurality of media devicesand controlling the content played by the media devices using a mobiledevice.

SUMMARY OF THE INVENTION

The present invention relates to a system and method for controllingcontent played by a number of media devices. In general, the systemincludes a mobile device and the number of media devices. The mobiledevice includes a wireless communication interface for communicatingwith the media devices, a media database, and a control system includinga media client. When the mobile device enters a Wireless Personal AreaNetwork (WPAN) associated with a media device, the media clientcommunicates with the media device to obtain information describing thecontent residing at the media device and stores the information in themedia database at the mobile device. Thereafter, when the mobile deviceis within the WPAN associated with the media device, the media databaseis used to select content to be played at the media device.

In one embodiment, when the mobile device is within the WPAN associatedwith the media device, the media client interacts with a user of themobile device and enables the user to select desired content to beplayed at the media device from the media database. The media clientcommunicates with the media device to instruct the media device to playthe desired content. In another embodiment, when the mobile device iswithin the WPAN associated with the media device, the media clientautomatically selects desired content to be played from the mediadatabase based on predetermined user preferences and instructs the mediadevice to play the desired content.

In another embodiment, the media database of the mobile device operatesas a master database. The mobile device stores last-played time-stampsfor the content in the media database in addition to the informationdescribing the content for each of a number of media devices. When themobile device enters the WPAN associated with a media device, the mobiledevice provides the information describing the content stored at each ofthe number of media devices and the last-played time-stamps for thecontent to the media device. Based on the information and thelast-played time-stamps, the media device automatically selects thedesired content to be played. For example, based on the information andthe last-played time-stamps, the media device may determine a playhistory and select desired content that is consistent with the playhistory.

Those skilled in the art will appreciate the scope of the presentinvention and realize additional aspects thereof after reading thefollowing detailed description of the preferred embodiments inassociation with the accompanying drawing figures.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

The accompanying drawing figures incorporated in and forming a part ofthis specification illustrate several aspects of the invention, andtogether with the description serve to explain the principles of theinvention.

FIG. 1 is a block diagram of a system including a mobile device and anumber of media devices, wherein the mobile device controls the contentplayed by the media devices according to one embodiment of the presentinvention;

FIG. 2 is a block diagram of an exemplary media device according to oneembodiment of the present invention;

FIG. 3 is a block diagram of an exemplary mobile device according to oneembodiment of the present invention;

FIG. 4 illustrates a provisioning process wherein a mobile deviceobtains metadata describing content residing at a media device accordingto one embodiment of the present invention;

FIG. 5 illustrates an exemplary media database for the mobile terminalof FIGS. 1, 3, and 4 according to one embodiment of the presentinvention;

FIG. 6 illustrates a process for controlling the content played by amedia device according to one embodiment of the present invention;

FIG. 7 illustrates an exemplary system wherein a mobile device issimultaneously within Wireless Personal Area Networks (WPANs) associatedwith two media devices according to one embodiment of the presentinvention;

FIG. 8 illustrates an exemplary system wherein a mobile device issimultaneously within Wireless Personal Area Networks (WPANs) associatedwith two media devices according to another embodiment of the presentinvention; and

FIG. 9 illustrates a process for controlling the content played by amedia device according to another embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The embodiments set forth below represent the necessary information toenable those skilled in the art to practice the invention and illustratethe best mode of practicing the invention. Upon reading the followingdescription in light of the accompanying drawing figures, those skilledin the art will understand the concepts of the invention and willrecognize applications of these concepts not particularly addressedherein. It should be understood that these concepts and applicationsfall within the scope of the disclosure and the accompanying claims.

The present invention provides a system for controlling content playedby a number of media devices. An exemplary system 10 is illustrated inFIG. 1. In this embodiment, the system 10 includes two Wireless PersonalArea Networks (WPANs) 12 and 14. Although only two WPANs 12 and 14 areillustrated, the system 10 may include any number of WPANs 12 and 14. Inaddition, the WPANs 12 and 14 may or may not overlap. The WPAN 12includes a media device 16, and the area covered by the WPAN 12 dependsupon a range of a wireless communication interface associated with themedia device 16. Likewise, the WPAN 14 includes a media device 18, andthe area covered by the WPAN 14 depends upon a range of a wirelesscommunication interface associated with the media device 18.

As discussed below, the media devices 16 and 18 include media playersand content that may be played by the media players. A mobile device 20,which includes a wireless communication interface, operates to controlthe content played by the media players of the media devices 16 and 18.More specifically, the first time that the mobile device 20 enters theWPAN 12, the mobile device 20 communicates with the media device 16 toobtain metadata defining the content stored at the media device 16 andthen stores the metadata. The metadata may more generally be referred toas any information describing the content stored at the media device 16.Thereafter, a user associated with the mobile device 20 may selectdesired content to be played using the stored metadata. Alternatively,the mobile device 20 may automatically select desired content to beplayed based on user preferences. The mobile device 20 then communicateswith the media device 16 to direct the media device 16 to play thedesired content. In response, the media device 16 plays the desiredcontent. Likewise, when the mobile device 20 enters the WPAN 14, themobile device 20 obtains and stores metadata describing the contentstored by the media device 18 and directs the media device 18 to playdesired content.

Each of the media devices 16 and 18 may be a personal computer, adigital video recorder associated with a television, an audio playersuch as a Moving Pictures Experts Group (MPEG) Audio Layer-3 (MP3)player, a digital picture frame, or the like. An exemplary embodiment ofthe media device 16 is illustrated in FIG. 2. Note that this discussionis equally applicable to the media device 18. As shown, the media device16 includes a wireless communication interface 22, a control system 24,and a content database 26. The wireless communication interface 22 maybe a stand-alone device communicatively coupled to the control system 24and operating to provide wireless communication between the media device16 and the mobile device 20. Alternatively, the wireless communicationinterface 22 may be embedded within the media device 16. The wirelesscommunication interface 22 may operate according to a wirelesscommunication standard such as, but not limited to, the Bluetoothwireless communication standard, the Zigbee wireless communicationstandard, the Wireless Fidelity (WiFi) wireless communication standard,or the IEEE 802.11 wireless communication standards.

The control system 24 includes a media player 28 and a WPAN media server30, which is hereinafter referred to as the media server 30. The mediaplayer 28 may be implemented in hardware and/or software and operates toplay the content in the content database 26 such that people within theWPAN or near to the media device 16 can view and/or listen to thecontent. The content database 26 may be any storage device such as, butnot limited to, a hard drive or Random Access Memory (RAM) and operatesto store content such as digital video files, digital audio files,digital images, slideshows of digital images, or the like.

The media server 30 may be implemented in software and/or hardware andoperates to instruct the media player 28 to play select content based oninstructions or information received from the mobile device 20. Inaddition, the media server 30 may optionally scan the content database26 for content that may be played at initial start-up or periodicallythroughout operation. This may be referred to as “auto-discovering” thecontent. Additionally or alternatively, a user associated with the mediadevice 16 may configure the media server 30 to select the content orcontent types to be made available to the mobile device 20.

FIG. 3 is a block diagram illustrating an exemplary embodiment of themobile device 20. The mobile device 20 may be a mobile phone, PersonalDigital Assistant (PDA), or the like. Alternatively, the mobile device20 may be a stand-alone device similar to a remote control. In general,the mobile device 20 includes a wireless communication interface 32 anda control system 34. The wireless communication interface 32 may be astand-alone device communicatively coupled to the control system 34 andoperating to provide wireless communication between the mobile device 20and the media devices 16 and 18. Alternatively, the wirelesscommunication interface 32 may be embedded within the mobile device 20.The wireless communication interface 32 may operate according to awireless communication standard such as, but not limited to, theBluetooth wireless communication standard, the Zigbee wirelesscommunication standard, or the Wireless Fidelity (WiFi) wirelesscommunication standard, or the IEEE 802.11 wireless communicationstandards.

The control system 34 includes a WPAN media client 36 and a mediadatabase 38. The WPAN media client 36 is hereafter referred to as themedia client 36. The media client 36 may be implemented in hardwareand/or software and operates to provide instructions or information tothe media server 30 in order to control the content played by the mediaplayer 28. As discussed below in more detail, when the mobile device 20enters one of the WPANs 12, 14, the media client 36 interacts with themedia server 30 to obtain metadata describing the content in the contentdatabase 26. The metadata is stored in the media database 38 and mayinclude information such as a file name, file type, and an identifier ofthe WPANs 12, 14 for each file in the content database 26. Note that, inthe preferred embodiment, the media database 38 stores metadatadescribing the content in the content database 26 for each of the WPANs12, 14. In addition, last-played time-stamps for the content may beadded to the media database 38, as discussed below. A user associatedwith the mobile device 20 may then browse the media database and selectcontent to be played. For example, if the mobile device 20 is within theWPAN 12, then the user may select content to be played by the mediadevice 16 using the media database 38. If the mobile device 20 is withinthe WPAN 14, then the user may select content to be played by the mediadevice 18 using the media database 38. In another embodiment, the mediaclient 36 may automatically select content to play from the mediadatabase 38 based on preferences previously entered by the user.

FIG. 4 illustrates a provisioning process performed the first time thatthe mobile device 20 enters the WPAN 12. Note, however, that thisdiscussion equally applies to the first time that the mobile device 20enters the WPAN 14. When the mobile device 20 enters the WPAN 12 bycoming within the range of the wireless communication interface 22 ofthe media device 16, the media client 36 detects the media server 30 anda validation process is performed (step 100). During the validationprocess, the media client 36 interacts with a user associated with themobile device 20 to obtain a password or key, which may also be referredto as a passkey. Once the passkey is entered by the user, it is providedto the media server 30 and communication between the media client 36 andthe media server 30 is established. In the preferred embodiment, thevalidation process is performed only once when the mobile device 20enters the WPAN 12 for the first time. If the mobile device 20 leavesthe WPAN 12 and later returns, the validation process does not need tobe repeated. In one embodiment, the wireless communication interfaces22, 32 of the media device 16 and mobile device 20, respectively,operate according to the Bluetooth wireless communication standard andthe validation process is the pairing process described in the Bluetoothspecification.

Once validation is complete, the media client 36 sends a request to themedia server 30 for metadata describing the content in the contentdatabase 26 at the media device 16 (step 102). In response, the mediaserver 30 queries the content database 26 to obtain the metadatadescribing the content within the content database 26 (step 104). Themetadata may include information such as the file name and file type foreach file in the content database 26. In addition, the media server 30may add a server name or identifier of the media device 16 to themetadata. The media server 30 then returns the metadata to the mediaclient 36 (step 106), and the media client 36 stores the metadata in themedia database 38 (step 108).

Steps 100-108 are repeated each time the mobile device 20 enters one ofthe WPANs 12, 14 for the first time. As such, the media database 38stores metadata describing the content in the content databases 26 foreach of the WPANs 12, 14.

FIG. 5 illustrates an exemplary embodiment of the media database 38. Asshown, the media database 38 includes an ID, file name, file type,last-played time-stamp, and server name for each file stored in thecontent databases 26 of the media devices 16 and 18. The IDs may beassigned to each of the files by the media client 36. The name and filetype are provided in the metadata provided to the media client 36 fromthe media server 30. The last-played time-stamp indicates the time atwhich the particular file was last played by the media player 28 and maybe added to the media database 38 by the media client 36. Optionally,the last-played time-stamp may be provided in the metadata provided bythe media server 30. The server name is an identifier for the WPANs 12,14 in which the content is located and may be added by the media client36 or provided in the metadata from the media server 30. In thisexample, the server names are “Kitchen” and “Study.” The “Kitchen”server name may be used to identify the WPAN 12, and the “Study” servername may be used to identify the WPAN 14. Thus, for example, when themobile device 12 is within the WPAN 12, the media client 36 may enablethe user associated with the mobile device 20 to browse the contentstored in the content database 26 within the WPAN 12 and select contentto be played by the media player 28.

FIG. 6 illustrates the process of controlling the content played by themedia device 16 according to one embodiment of the present invention.Note, however, that this discussion equally applies to controlling thecontent played by the media device 18 when the mobile device 20 iswithin the WPAN 14. The process begins when the mobile device 20 entersthe WPAN 12 and the media client 36 detects the media server 30 (step200). For example, the media server 30 may periodically scan the WPAN 12for a mobile device 20. Alternatively, the mobile device 20 mayperiodically perform a scan for the media devices 16, 18. Note that ifthis process is performed after the provisioning process of FIG. 4, thenstep 200 may be unnecessary. Once the media client 36 has detected themedia server 30 or visa versa, communication between the media client 36and the media server 30 is established.

Thereafter, the media client 36 may optionally communicate with themedia server 30 to obtain any updates to the metadata describing thecontent in the content database 26 (step 202). This may be particularlybeneficial where the mobile device 20 has just re-entered the WPAN 12after leaving for some period of time during which content may have beenadded or removed from the content database 26.

The media client 36 then operates to select desired content to play atthe media device 16 from the media database 38 (step 204). In oneembodiment, a user interacts with the media client 36 to browse themedia database 38 and select desired content in the content database 26to be played. In another embodiment, the user associated with the mobiledevice 20 may interact with the media client 36 to define preferences.The user may define preferences for each of the WPANs 12 and 14 or asingle set of preferences to be applied to all of the WPANs 12 and 14.The preferences may then be used by the media client 36 to automaticallyselect the desired content to be played using the media database 38. Asa first example, the user may configure his preferences such thatcontent is selected based on genre. More specifically, the media player28 within the WPAN 12 may be capable of playing audio content, and theuser may configure his preferences such that the media client 36automatically selects music content in a desired genre such as “rock”when the mobile device 20 is within the WPAN 12. Note that the genre ofthe content may be provided in the metadata from the media server 30. Asa second example, the user may configure his preferences such thatnon-duplicate content is played. More specifically, the user mayconfigure his preferences such that the media client 36 selects contentthat has not been previously played or recently played in any otherWPAN. As a third example, the user may also configure his preferencessuch that content to be played is selected randomly by the media client36. As a fourth example, the user may configure his preferences bydefining a play list for each of the WPANs 12 and 14. As a fifthexample, the user may configure his preferences such that the mediaclient 36 selects new content as the content to be played.

The media client 36 then directs the media server 30 to play selectcontent from the content database 26 (step 206). Once the media server30 receives the request to play the desired content from the mediaclient 36, the media server 30 directs the media player 28 to play thedesired content (step 208). In response, the media player 28 obtains thedesired content from the content database 26 and plays the desiredcontent (step 210). The media server 30 then sends a notification to themedia client 36 when the process is complete (step 212). Thenotification may be sent at any time after the media server 30 directsthe media player 28 to play the desired content. For example, thenotification may be sent once the playing of the desired content by themedia player 28 is complete. Upon receiving the notification from themedia server 30, the media client 36 updates the last-played time-stampfor the desired content within the media database 38 (step 214).

FIGS. 7 and 8 illustrate two embodiments where the mobile device 20 iswithin both of the WPANs 12 and 14 simultaneously. If the media devices16 and 18 play content types that do not interfere with one another, themobile device 20 may operate as described above to control both of themedia devices 16 and 18. For example, if the media device 16 playsslideshows without audio or displays digital images, then the mobiledevice 20 may direct the media device 16 to play a slideshow or displaydigital images while simultaneously directing the media device 18 toplay other content such as a movie, song, or slideshow.

On the other hand, if the media device 16 is capable of playing contentthat may interfere with content played by the media device 18 or viceversa, then the media client 36 may control the media devices 16 and 18in such a manner as to avoid interference. In one embodiment, the usermay select a desired one of the media devices 16 and 18. In anotherembodiment, the media client 36 may automatically select one of themedia devices 16 and 18 based on priorities assigned to the mediadevices 16 and 18 by the user. In yet another embodiment, the mediaclient 36 may automatically select a one of the media devices 16 and 18closest to the mobile device 20 based on the strength of the signalsreceived from the media devices 16 and 18. In any of these threeembodiments, one of the media devices 16 and 18 is selected and themobile device 20 operates as described above to control the contentplayed by the selected one of the media devices 16 and 18.

As an alternative, the media client 36 may control the media devices 16and 18 simultaneously even though the media device 16 is capable ofplaying content that may interfere with the content played by the mediadevice 18 or vice versa. More specifically, the media client 36 maydetermine the types of files that may be played by each of the mediadevices 16 and 18 by examining the file types stored in the mediadatabase 38. If any of the file types played by one of the media devices16, 18 may interfere with the playing of any of the file types played bythe other of the media devices 16, 18, the media client 36 may controlthe selection of content to be played by the media devices 16 and 18such that interfering file types are not played simultaneously. Forexample, if the both of the media devices 16, 18 are capable of playingmovies and songs or displaying digital images, the mobile device 20 maycontrol the media devices 16 and 18 such that if one of the mediadevices 16, 18 is playing video (with audio) or audio, then the other ofthe media devices 16, 18 displays digital images. As another example,assume that the media client 36 operates such that the user selects thecontent to be played. If the user selects an audio file to be played bythe media device 16, then the media client 36 may prevent selection ofanother audio file to be played by the media device 18 while the mediadevice 16 is playing the selected audio file.

FIG. 9 illustrates an alternative process for controlling the contentplayed by the media device 16. This embodiment is similar to thatillustrated in FIG. 6. However, in this embodiment, the media server 30,rather than the media client 36, selects the content to be played. Theprocess begins when the mobile device 20 enters the WPAN 12 and themedia client 36 detects the media server 30 (step 300). For example, themedia server 30 may periodically scan for the mobile device 20.Alternatively, the mobile device 20 may periodically perform a scan forthe media devices 16, 18. Note that if this process is performed afterthe provisioning process of FIG. 4, then step 300 may be unnecessary.Once the media client 36 has detected the media server 30 or visa versa,communication between the media client 36 and the media server 30 isestablished.

Thereafter, the media client 36 communicates with the media server 30 tosynchronize the media database 38 with a media database 40 at the mediadevice 16 (step 302). More specifically, the media database 38 at themobile device 20 operates as a master database and includes the metadatadescribing the content stored in the content databases 26 of the WPANs12 and 14. In addition, the media database 38 stores the last-playedtime-stamp for each file. Synchronization may begin by updating themedia database 38 to add metadata describing content recently added tothe content database 26 or remove metadata describing content recentlyremoved from the content database 26. Then, the media client 36communicates with the media server 30 such that the media database 40 atthe media device 16 includes all of the information from the mediadatabase 38 at the mobile device 20.

Thereafter, the media server 30, rather than the media client 36,selects the content to be played using the media database 40 (step 304).For example, the media server 30 may select content such that only newcontent is played. Since the media database 40 includes information foreach of the WPANs 12 and 14, the media server 30 may select only newcontent that has not yet been played in either of the WPANs 12 and 14.Alternatively, the media server 30 may intelligently decide what contentto select based on the past play history. More specifically, the mediaserver 30 may examine the last-played time-stamp for the files todetermine the play history either in the WPAN 12 or in both of the WPANs12 and 14. Based or the examination, the media server 30 may determinethat all or a majority of the last N files that were played are musicfiles of a particular genre, digital images of the user's children, orthe like. Based on this determination, the media server 30 may selectcontent to be played that is consistent with the play history.

After selecting the content, the media server 30 directs the mediaplayer 28 to play the select content (step 306). In response, the mediaplayer 28 obtains the select content from the content database 26 andplays the select content (step 308). The media server 30 then sends anotification to the media client 36 when the process is complete (step310). The notification may be sent at any time after the media server 30directs the media player 28 to play the select content. For example, thenotification may be sent once the playing of the select content by themedia player 28 is complete. Upon receiving the notification from themedia server 30, the media client 36 updates the last-played time-stampfor the select content within the media database 38 (step 312).

Those skilled in the art will recognize improvements and modificationsto the preferred embodiments of the present invention. All suchimprovements and modifications are considered within the scope of theconcepts disclosed herein and the claims that follow.

1. A method of operation of a mobile device via a wireless communicationinterface comprising: sending a passkey via the wireless communicationinterface to a media device to complete a validation process; sending arequest via the wireless communication interface to the media device toobtain metadata that describes content on the media devices; andreceiving the metadata via the communication interface from the mediadevice, wherein the metadata contains last played time-stamps for thecontent.
 2. The method of claim 1, wherein the media device sends arequest via the wireless communication interface to the media device toplay content.
 3. The method of claim 1, wherein the content was selectedby a user of the mobile device.
 4. The method of claim 1, wherein thewireless communication interface is connected to a wireless local areanetwork (WLAN).
 5. The method of claim 1, wherein the media device is adigital video recorder (DVR).
 6. The method of claim 1, wherein themedia client is implemented in software.
 7. The method of claim 1,wherein the media device consists of one or more of a media server, amedia player, a media database, and a content database.
 8. The method ofclaim 7, wherein the mobile device receives a server name associatedwith the media server.
 9. The method of claim 1, wherein the wirelesscommunication interface is connected to a wireless personal area network(WPAN).